Universal sampling rate converter for digital audio frequencies

ABSTRACT

A method for conversion of input audio frequency data, at an input sample frequency, to output audio frequency data, at an output sample frequency. The input data is subjected to expansion to produce expanded data at an output sample frequency. The expanded data is interpolated to produce output data. In one embodiment of the invention the interpolation is effected by a process that also filters the output data. In another embodiment, the input data is sampled by an integer factor to produce expanded data, the expanded data is then interpolated to produce the output data. Also disclosed is a method of transition of a signal output, at one frequency, to a signal output at another frequency. The signal output at said one frequency is faded out over a period, and the signal output at said other frequency is faded in over that period. Both signal outputs are combined to produce the signal output over said period. Apparatus for effecting the methods is also disclosed.

FIELD OF THE INVENTION

This invention relates to methods and apparatus for conversion of inputaudio frequencies to output audio frequencies.

BACKGROUND OF THE INVENTION

Digital Audio is based on many different means of communication. Thedifferent digital media generally have conflicting sampling frequencies,where those sampling frequencies are in accordance with the NyquistSampling theorem. For example, digital transmission of broadcastingprograms at 32 kHz, compact discs at 44.1 kHz, digital video discs at 48kHz and speech recordings at 6 kHz to 8 kHz, as described in “HighQuality Digital Audio in the Entertainment Industry”, IEEE ASSP Magazine1985 pages 2–25. Digital audio requires a sampling frequency conversiontechnique to handle simple as well as non-trivial ratios efficiently.

Conversion by going from digital to analogue (through a DAC and alow-pass filter) and then re-sampling the smoothed signal at the outputrate is simple, but costly and limited by the imperfections(non-linearity, phase response, noise) of the analogue filter asdescribed in “High, Quality Analogue Filters for Digital Audio”, 67^(th)AES Convention, November 1980.

Conversion in simple integer or rational ratios f_(i)/f₀ by single ormulti-stage FIR filter design, as described in Rabiner and Croichie,Multi-rate Digital Signal Processing, Prentice Hall Publication, 1983.However, it is not particularly suited for many arbitrary ratios, as itleads to far too many filter configurations. An individual filterconfiguration is suited maximally to a subset of these ratios only.

SUMMARY OF THE INVENTION

In accordance with the present invention, there is provided a method forconversion of input audio data, at an input audio data frequency, tooutput audio data, at an output audio data frequency, including thesteps of:

(a) sampling the input audio data;

(b) expanding the input audio data, to produce expanded data; and

(c) interpolating the expanded data to produce output audio data,

wherein the step of interpolating bandlimits the expanded data to eitherthe sampling frequency divided by two or the output audio data frequencydivided by two, which ever is the lesser.

Preferably, the step of interpolating includes sinc interpolationsubstantially in accordance with a sinc interpolation function.

Preferably, said sinc interpolation function is substantially inaccordance with:

${x_{c}(t)} = {\frac{1}{f_{s}}{\int_{- A}^{+ A}{\left\lbrack {\sum\limits_{k = \infty}^{\infty}\;{{x\lbrack k\rbrack}{\mathbb{e}}^{- {j2\pi}^{\frac{Fk}{f_{s}}}}}} \right\rbrack\ {\mathbb{e}}^{j2\pi Ft}{\mathbb{d}F}\mspace{14mu}{where}}}}$$\begin{matrix}{{x_{c}(t)} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{{x(t)} = {{input}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{F_{s} = {{sampling}\mspace{14mu}{frequency}}} \\{F^{\prime} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{frequency}}} \\{A = {{minimum}\mspace{14mu}\left\lbrack {{{Fs}\text{/}2},{F^{\prime}\text{/}2}} \right\rbrack}} \\{{x\lbrack k\rbrack} = {{uniform}\mspace{14mu}{samples}\mspace{14mu}{of}\mspace{14mu}{the}\mspace{14mu}{input}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{x(t)}}} \\{k = {{sampling}\mspace{14mu}{time}\mspace{14mu}{with}\mspace{14mu}{respect}\mspace{14mu}{to}\mspace{14mu}{frequency}}}\end{matrix}$

In accordance with the present invention, there is also provided amethod for conversion of input audio data, at an sample frequency, tooutput audio data, at an output audio data frequency, including thesteps of:

-   -   (a) upsampling the input audio data by an integer factor, so as        to increase the sampling rate of the input data to produce        expanded data; and    -   (b) interpolating the expanded data to produce the output data        wherein the interpolating is linear interpolation, the        upsampling includes polyfhase filters for filtering the expanded        data, and said upsampling includes a commutator for selecting        the outputs of the filters.

Preferably, the commutator, at any one time, selects only two outputsfrom the polyphase filters.

In accordance with the present invention, there is also provided afrequency converter for conversion of input audio data, at an inputaudio data frequency, to output audio data, at an output audio datafrequency, including:

(a) means for sampling the input audio data;

(b) means for expanding the input audio data to produce expanded data;and

(c) means for interpolating the expanded data to produce output audiodata, where the step of interpolating bandlimits the expanded data toeither the sampling frequency divided by two or the output audio datafrequency divided by two, which ever is the lesser.

In accordance with the present invention, there is also provided afrequency converter for conversion of input audio data, at an inputaudio data frequency, to output audio data, at an output audio datafrequency, including:

(a) means for upsampling the input audio data by an integer factor, soas to increase the sampling rate of the input audio data to produceexpanded data and

(b) means for interpolating the expanded data to produce output audiodata, wherein the interpolating is linear interpolation, said upsamplingincludes polyphase filters for filtering said expanded data, and saidpolyphase filters are in parallel and said upsampling includes acommutator for selecting the outputs of the filters.

Preferably, a frequency converter as claimed in claim 11, wherein thecommutator at any one time selects only two outputs from the polyphasefilters.

Advantageously the invention will be a single simple structure, oftendesired in Audio applications, for conversion between commonly occurringaudio frequencies. The advantage of using a single structure is that forconversion between different frequency combinations, the same block codeand same coefficients can be used. This reduces the program code size. Asingle simple structure also means it can be implemented efficiently asa hardware block, without excessive chip area.

DETAILED DESCRIPTION OF THE DRAWINGS

The invention is further described by way of examples only withreference to; the accompanying drawings, in which:

FIG. 1 is a block diagram of a digital frequency converter of a generalkind described as prior art;

FIG. 2 is a block diagram of a digital frequency converter constructionin accordance with the invention;

FIG. 3 is a block diagram of a digital frequency converter constructionin accordance with the invention;

FIG. 4 is a block diagram of a digital frequency converter constructionis accordance with the invention;

FIG. 5 is a flow diagram depicting sinc and linear interpolationtechniques which may be affected in the FIG. 3;

FIG. 6 is a diagram depicting processing steps occurring in the use ofthe digital frequency converter of FIG. 3; and

FIG. 7 is a diagram illustrating a cross-fading technique, in accordancewith the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 shows an audio frequency converter 10 according to the prior art.This employs a digital expansion stage 12, where the sampling frequencyis increased to a significantly high integral value, such as a suitablepower of 2, followed by an analogue interpolation stage 14 where samplevalues, at points corresponding to output sampling frequency, arecomputed.

Consider that x[n] is a uniformly sampled version of the bandlimitedanalogue signal x(t). If the sampling frequency is F_(s), therefore thetime period is T_(s), then x[n]=x(nT_(s)).

Moreover, if x(t) was band-limited to F_(s)/2, then perfectreconstruction of x(t) from x[n] can be obtained by applying theinterpolation function (sampling theorem)

$\begin{matrix}{{x(t)} = {\sum\limits_{k = \infty}^{\infty}\;{{x\lbrack k\rbrack}{\phi_{k}(t)}}}} & (1)\end{matrix}$where

$\begin{matrix}{{\phi_{k}(t)} = {\frac{\omega_{c}T_{s}}{\pi}\frac{\sin\left\lbrack {\omega_{c}\left( {t - {kT}_{s}} \right)} \right\rbrack}{\omega_{c}\left( {t - {kT}_{s}} \right)}}} & (2)\end{matrix}$andω_(c)=πƒ_(s); the cutoff frequency

Since the summation limit is from −∞ to ∞it cannot be practicallyimplemented. If non-uniform sampling or finite length is considered(about the point of reconstruction) other types of interpolationfunctions such as spline and Lagrange can be used. Equation (3) is anexample of a Lagrange interpolator.

$\begin{matrix}{{{\phi_{k}(t)} = {\prod\limits_{i = N_{1}}^{N_{2}}\;\frac{t - t_{i}}{t_{k} - t_{i}}}};{{{where}\mspace{14mu} i} \neq k}} & (3)\end{matrix}$

The advantage of the Lagrange interpolator is that it results in apolynomial fit, constructed in such a way that each sample isrepresented by a function which has zero values at all other samplingpoints.

Evaluating x(t) for all possible values is physically impossible.However, reconstruction only requires evaluation of x(t) at pointst=mT′, corresponding to re-sampling with new sampling frequency F_(s),with an associated period T′. Therefore:

$\begin{matrix}\begin{matrix}{n = {{the}\mspace{14mu}{integer}\mspace{14mu}{value}\mspace{14mu}{{of}\mspace{14mu}\left\lbrack {{mT}^{\prime}\text{/}T_{s}} \right\rbrack}\mspace{14mu}{and}}} \\{{\Delta\; t} = {{mT}^{\prime} - {{nT}_{s}\mspace{14mu}{Thus}}}} \\{{x\left( {mT}^{\prime} \right)} = {{{x\left( {{nT}_{s} + {\Delta\; t}} \right)}\mspace{14mu}{where}\mspace{14mu} 0} < {\Delta\; t} \leq T}} \\{= {\sum\limits_{k = {- N}}^{N}\;{{x\left\lbrack {n + k} \right\rbrack}{\phi_{k}\left( {\Delta\; t} \right)}}}}\end{matrix} & (4)\end{matrix}$

The above described technique functions adequately when F_(s)<F′.However, when reconstructing audio data where Fs>F′, the output audiodata will be effected by an effect called aliasing. Aliasing isfrequency fold over due to under sampling and can be removed byprefiltering the audio data to effectively bandlimit the audio data toF′/2. This step requires prefiltering of data before reconstruction.

In converters constructed by FIG. 1, and operating as above mentioned,if the interpolator 14 is a Lagrange, spline or linear interpolator,pre-filtering of the extended input data generally needs to be effectedin order to remove the mentioned aliasing effect. Converter 20, shown inFIG. 2 and constructed in accordance with the principles of thisinvention, depicts a digital expansion stage 22 followed by sincinterpolation 24. By this experience it is possible to avoid saidpre-filtering, such as is necessary when using these Lagrange, splineand linear interpolators.

$\begin{matrix}{{x_{c}(t)} = {\frac{1}{f_{s}}{\int_{- A}^{+ A}{\left\lbrack {\sum\limits_{k = \infty}^{\infty}\;{{x\lbrack k\rbrack}{\mathbb{e}}^{- {j2\pi}^{\frac{Fk}{f_{s}}}}}} \right\rbrack\ {\mathbb{e}}^{j2\pi Ft}{\mathbb{d}F}}}}} & (5)\end{matrix}$whereA=minimum [F _(s)/2, F′/2]

Equation (5) represents a sinc interpolation reconstruction formula inaccordance with the invention. The integral limits, ±A, of this functioneffectively bandlimit the interpolation. The interpolation isbandlimited to effect filtering of the data output by the interpolation.Therefore, when F_(s) is less than F′, the equation (5) will function asa standard sinc interpolator whereby the data reconstructed by theinterpolation will be bandlimited to F_(s)/2. However, when Fs isgreater than F′, equation (5) will function as a sinc interpolatorwhereby the data reconstructed by the interpolation will be bandlimitedto F′/2. Thus, the reconstructed data will be bandlimited to F′/2 andthereby be filtered from an aliasing effect.

Therefore, the prefiltering step, to remove an aliasing effect inreconstructed data, is no longer required. The cutoff frequency, ω_(c),is effectively constrained to the minimum of (πF_(s), πF′), therebylimiting the integral of the reconstruction formula of equation 5, to A.Sinc interpolation may therefore interpolate and filter the expandeddata in a single step.

FIG. 3 illustrates yet another converter in accordance with theinvention. Converter 30 has a first stage 32 where the sampling rate,F_(s), of the input audio data is increased digitally by an integerfactor L, giving an output y[n] at L*F_(s). y[n] is also referred to asexpanded data.

The second stage 34 may comprise a simple linear interpolator, whichinterpolates the denser expanded samples of y[n] at frequency L*F_(s) togenerate output at required frequency F′36. Upsampling reduces theinterpolation error considerably.

This process is known as ‘upsampling’. Upsampling reduces the errorswhich occur during interpolation considerably. Upsampling by a factor of16 followed by linear interpolation leads to SNR of ˜60 dB forconversion ratio F′F_(s)=4.

Converter 30 is simplified by using the same interpolation factor, 16,for all conversion ratios. In effect, the said common interpolationfactor enables the same filter coefficients to be used for all ratios.Upsampling may include a normal polyphase filter.

FIG. 4 illustrates another converter in accordance with the invention.The converter 40 has a first stage 42 where the sampling rate of theinput digital data is increased digitally by an integer factor L, givingthe output y[n] at sampling rate L*F_(s). The second stage 44 comprisesa sinc interpolator, which interpolates the expanded samples atfrequency L*F_(s) 48 to generate out put at required frequency F′ 46.Upsampling reduces the interpolation error considerably.

Converter 40 is simplified by using the same interpolation factor, 16,for all conversion ratios. In effect, the said common interpolationfactor enables the same filter coefficients to be used for all ratios. Apolyphase filter implements the upsampling stage.

For simple operations converter 30, would be used in preference toconverter 40. FIG. 5 illustrates processes effected in the converters 30and 40.

Upsampling, in the embodiments of FIGS. 3, 4 and 5, is generallyperformed by inserting I-1 zeros between every two consecutive samplesand then filtering the expanded result, where I is the degree of upsampling. If the converter is constructed in accordance with FIG. 4,then filtering is performed in a single step as a part of theinterpolation process.

Insertion of I-1 zeros means that Y′(z)=X(z^(l)), where y′[n] is thesequence generated by inserting I-1 zeros in x[n]. In the frequencydomain Y′(e^(jw))=X(e^(jwl)), which essentially means that the spectrumof x[n] has been co pressed I times. Since X(e^(jwl)) is periodic in 2πthis leads to creation of extra images in the spectrum. These images areremoved by a filter with a bandlimit of ω_(c)=π/I.

Computational efficiency is obtained in the filter structure above byreducing the large FIR polyphase filter (h[n]) of length M into a set ofsmaller polyphase filters of length K=M/I. Since the upsampling processinserts I-1 zeros between successive values of x[n], only K out of Minput values stored in the FIR filter at any time are non-zero. Thisobservation leads to the well-known polyphase filters

$\begin{matrix}{{p_{k}(n)} = {h\left( {k + {nI}} \right)}} & {{k = 0},1,\ldots,{I - 1.}} \\\; & {{n = 0},1,\ldots,{K - 1}}\end{matrix}$

The set of I polyphase filers can be arranged as a parallel realisation62, as shown in FIG. 6, where the output of each filter 64 can beselected by a commutator 66.

In the case of linear interpolation, two adjacent polyphase filteroutputs are required at each time. Further reduction in computation isachieved by noting that in the case of linear interpolation, not allpolyphase filter outputs are used in generating the samples at theoutput.

In a specific example of converter 30, the process of FIG. 6, rateconversion from 16 kHz. to 44.1 kHz. The input to the system are samplesx[n] at 16 kHz. After upsampling by 16 samples y[n] are produced atfrequency 16×16 kHz.=256 kHz. The output {z[0], z[1], z[2], . . . } at441.1 kHz. are interpolations of samples pairs {(y[0],y[1]),(y[5],y[6]), (y[11],y[12]), . . . } corresponding to the ratio256/44.1=5.8049. Since only specific points are required others need notbe computed. In the polyphase approach, above described, each polyphasefilter 62 generates an output 64 and the commutator 66 moves to the nextpolyphase. At the end of a cycle the commutator returns to the firstfilter.

Since only specific polyphase outputs are required computation can bereduced by skipping those polyphase filters whose output are notrequired for that period of time. Unless the conversion ratio is aninteger no polyphase filter can be absolutely avoided. The abovedescribed example, achieves a computation gain of about four.

Internal clock inconsistencies may be a problem in digital frequencyconversion. Consider the example of conversion from 32 kHz. to 44.1 kHz.Real-time systems work on limited buffer space and on blocks of data.Suppose the constraint on the system is that it always operates on Noutput samples. Each time N samples are transmitted at the output thesystem receives an interrupt for DMA (Direct Memory Access) and all thesamples collected at input since the last DMA is copied to internalbuffer. Similarly N samples must be ready to be transferred to theoutput buffer.

Now, the input and output clocks are free running so there is noguarantee that the ratio between the time periods of the two clocks willbe exactly as computed. As a result it may happen that either the numberof samples obtained from input is too few to produce N samples at outputor they produce more than N samples.

If F_(s) is the input sampling frequency and F′ is the required outputsampling frequency, each time N samples are transmitted at output,[N*F_(s)/F′] samples should accumulate at the input. A small deviationmay occur, but on average the above relation must hold. In a case wherethe deviation is appreciable, samples may have to be dropped. This casearises when the input rate is higher than the output rate. As a resultof being dropped samples may have to be repeated.

Therefore, when the input data frequency is higher than the output datafrequency, more samples are produced at the output, than the buffer 68can hold. Overwriting the older samples in the buffer produces adiscontinuity and as a result a clicking sound is made.

In the cross fading scheme of FIG. 7, the output data frequency 72 isless than the input data frequency 71. To enable a smooth transition,the input data frequency is faded in over time as indicated by 73 andthe output data frequency is faded out over time by 74. The result isthe smooth transition 75.

1. A method for conversion of input audio data, at an input audio datafrequency, to output audio data, at an output audio data frequency, themethod including: sampling the input audio data; expanding the inputaudio data, to produce expanded data; and interpolating the expandeddata to produce output audio data, wherein interpolating bandlimits theexpanded data to either a sampling frequency divided by two or theoutput audio data frequency divided by two, whichever is the lesser. 2.A method as claimed in claim 1, wherein interpolating includes sincinterpolation substantially in accordance with a sinc interpolationfunction.
 3. A method as claimed in claim 2, wherein said sincinterpolation function is substantially in accordance with:${x_{c}(t)} = {\frac{1}{f_{s}}{\int_{- A}^{+ A}{\left\lbrack {\sum\limits_{k = \infty}^{\infty}\;{{x\lbrack k\rbrack}{\mathbb{e}}^{- {j2\pi}^{\frac{Fk}{f_{s}}}}}} \right\rbrack\ {\mathbb{e}}^{j2\pi Ft}{\mathbb{d}F}\mspace{14mu}{where}}}}$$\begin{matrix}{{x_{c}(t)} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{{x(t)} = {{input}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{F_{s} = {{sampling}\mspace{14mu}{frequency}}} \\{F^{\prime} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{frequency}}} \\{A = {{minimum}\mspace{14mu}\left\lbrack {{{Fs}\text{/}2},{F^{\prime}\text{/}2}} \right\rbrack}} \\{{x\lbrack k\rbrack} = {{uniform}\mspace{14mu}{samples}\mspace{14mu}{of}\mspace{14mu}{the}\mspace{14mu}{input}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{x(t)}}} \\{k = {{sampling}\mspace{14mu}{time}\mspace{14mu}{with}\mspace{14mu}{respect}\mspace{14mu}{to}\mspace{14mu}{{frequency}.}}}\end{matrix}$
 4. A method as claimed in claim 1, wherein saidinterpolating effects bandlimited interpolation of said sampled inputaudio data and thereby substantially filters said output audio data toremove an aliasing effect in the one act.
 5. A method for conversion ofinput audio data, at a sample frequency, to output audio data, at anoutput audio frequency, the method including: upsampling the input audiodata by an integer factor, so as to increase a sampling rate of theinput audio data to produce expanded data; and interpolating theexpanded data to produce the output audio data wherein the interpolatingis linear interpolation, the upsampling includes polyphase filters forfiltering the expanded data, and said upsampling includes using acommutator for selecting outputs of the filters.
 6. A method claimed inclaim 5, wherein the commutator, at any one time, selects only twooutputs from the polyphase filters.
 7. A frequency converter forconversion of input audio data, at an input audio data frequency, tooutput audio data, at an output audio data frequency, the frequencyconverter including: means for sampling the input audio data; means forexpanding the input audio data to produce expanded data; and means forinterpolating the expanded data to produce output audio data, where themeans for interpolating bandlimits the expanded data to either asampling frequency divided by two or the output audio data frequencydivided by two, whichever is the lesser.
 8. A frequency converter asclaimed in claim 7, wherein the means for interpolating is substantiallyin accordance with a sinc interpolation function.
 9. A frequencyconverter as claimed in claim 8, wherein said sinc interpolationfunction is substantially in accordance with: $\begin{matrix}\begin{matrix}{{x_{c}(t)} = {\frac{1}{f_{s}}{\int_{- A}^{+ A}{\left\lbrack {\sum\limits_{k = {- \infty}}^{\infty}\;{{x\lbrack k\rbrack}{\mathbb{e}}^{- {j2\pi}^{\frac{Fk}{f_{s}}}}}} \right\rbrack\ {\mathbb{e}}^{j2\pi Ft}{\mathbb{d}F}\mspace{25mu}{where}}}}} \\\;\end{matrix} \\\begin{matrix}{{x_{c}(t)} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{{x(t)} = {{input}\mspace{14mu}{audio}\mspace{14mu}{data}}} \\{F_{s} = {{sampling}\mspace{14mu}{frequency}}} \\{F^{\prime} = {{output}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{frequency}}} \\{A = {{minimum}\mspace{14mu}\left\lbrack {{{Fs}\text{/}2},{F^{\prime}\text{/}2}} \right\rbrack}} \\{{x\lbrack k\rbrack} = {{uniform}\mspace{14mu}{samples}\mspace{14mu}{of}\mspace{14mu}{the}\mspace{14mu}{input}\mspace{14mu}{audio}\mspace{14mu}{data}\mspace{14mu}{x(t)}}} \\{k = {{sampling}\mspace{14mu}{time}\mspace{14mu}{with}\mspace{14mu}{respect}\mspace{14mu}{to}\mspace{14mu}{{frequency}.}}}\end{matrix}\end{matrix}$
 10. A frequency converter as claimed in claim 7, whereinsaid means for interpolating substantially filters said output audiodata to remove an aliasing effect in a single step.
 11. A frequencyconverter for conversion of input audio data, at an input audio datafrequency, to output audio data, at an output audio data frequency, thefrequency converter including: means for upsampling the input audio databy an integer factor, so as to increase a sampling rate of the inputaudio data to produce expanded data; and means for interpolating theexpanded data to produce output audio data, wherein the interpolating islinear interpolation, said means for upsampling includes polyphasefilters for filtering said expanded data, and said polyphase filters arein parallel and said means for upsampling includes a commutator forselecting outputs of the filters.
 12. A frequency convert as claimed inclaim 11, wherein the commutator at any one time selects only twooutputs from the polyphase filters.
 13. An apparatus, comprising: afirst stage to sample input audio data having an input audio datafrequency; a second stage coupled to the first stage to expand the inputaudio data to produce expanded data; and a third stage coupled to thesecond stage to interpolate the expanded data to produce output audiodata having an output audio data frequency, wherein the third stage caninterpolate to bandlimit the expanded data to either one of at leastapproximately a sampling frequency used by the first stage divided bytwo or at least approximately the output audio data frequency divided bytwo, whichever is less.
 14. The apparatus of claim 13 wherein the thirdstage can substantially use a sinc interpolation function to interpolatethe expanded data.
 15. The apparatus of claim 13 wherein the third stagecan substantially filter the output audio data to remove an aliasingeffect during one interpolation.
 16. The apparatus of claim 13, furthercomprising: a means for transitioning a signal output thereof from acondition at which the signal output is derived from a first inputsignal of a first frequency, applied to a first input of the means fortransitioning, to a condition at which the signal output is derived froma second input signal of a second frequency, applied to a second inputof the means for transitioning; a means for fading out the first inputsignal over a period and for fading in the second input signal over thatperiod; and a means for combining the faded-out first input signal andthe faded-in second input signal over that period and for applying theso combined input signals to the signal output.
 17. An apparatus,comprising: a first stage to upsample input audio data, having an inputaudio data frequency, by an integer factor to increase a sampling rateof the input audio data to produce expanded data; and a second stage tointerpolate the expanded data to produce output audio data, having anoutput audio data frequency, the second stage including at least onefilter to filter the expanded data, the first stage including acommutator to select an output of the filter.
 18. The apparatus of claim17 wherein the second stage can use linear interpolation to interpolatethe expanded data.
 19. The apparatus of claim 17 wherein the at leastone filter comprises a plurality of polyphase filters.
 20. The apparatusof claim 19 wherein the polyphase filters are coupled in parallel. 21.The apparatus of claim 19 wherein the commutator can select only twooutputs from the polyphase filters at any one time.
 22. The apparatus ofclaim 17 wherein samples that can be used by the second stage tointerpolate include denser samples of the expanded data and at leastpartially exclude less-denser samples of the expanded data.
 23. Theapparatus of claim 17 wherein the second stage can use sincinterpolation to interpolate the expanded data.